GRAPHREP rounded:0.1cm
SHADOW off
PEN style:dot w:0.05cm

EDGE
PEN style:solid w:0.05cm
AVAL dir:"Direction"
AVAL set-default:"Relation Node" fromType:"FromType"
AVAL set-default:"Group" toType:"ToType"
AVAL sRepr:"Representation"
#AVAL sRotate:"Rotate the visualised values by 90 degrees"
AVAL sName_de:  "Name"

  SET sName: (sName_de)

  
  END
IF ((dir = "To" OR dir = "Both") AND (toType != "Relation Node"))
  POLYLINE ({-0.3cm, 0.1cm, 0cm, 0cm, -0.3cm, -0.1cm})
  ENDIF
  
  START
IF ((dir = "From" OR dir = "Both") AND (fromType != "Relation Node"))
  POLYLINE ({-0.3cm, 0.1cm, 0cm, 0cm, -0.3cm, -0.1cm})
ENDIF

MIDDLE
SET aObjectArray: {"Task", "Sub-Process", "Choreography Task", "Sub-Choreography", "Start Event", "Intermediate Event (sequence flow)", "Intermediate Event (boundary)", "End Event", "Relation Node", "Data Object", "Exclusive Gateway", "Non-exclusive Gateway", "Non-exclusive Gateway (converging)", "Group", "Text Annotation", "Task (Normal)", "Stage", "CaseFile", "Entry", "Exit", "Milestone", "PlanFragment", "EventListener"}

AVAL showName:"Show name"
IF (showName = "Yes")
  IF (sRepr = "above/below")
    IF (sRotate = "Yes")
      FONT line-orientation:90
      ATTR "Name" text:(sName) line-break:words x:0.2cm y:0.0cm w:c:(2.0cm) h:t
    ELSE
      FONT line-orientation:0
      ATTR "Name" text:(sName) line-break:words x:0.0cm y:0.2cm w:c:(2.0cm) h:t      
    ENDIF   
  ELSE
    IF (sRotate = "Yes")
      FONT line-orientation:90
      ATTR "Name" text:(sName) line-break:words x:0.0cm y:-0.2cm w:l:(2.0cm) h:c 
    ELSE
      FONT line-orientation:0
      ATTR "Name" text:(sName) line-break:words x:0.2cm y:0.0cm w:l:(2.0cm) h:c 
    ENDIF       
  ENDIF
ENDIF
